package com.plant.action; 
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;


import com.plant.entity.PgcTopic;
import com.plant.service.TopicService;
import com.plant.tool.HotTool;
import com.plant.tool.NowTimetool;

/**
		"0 0 12 * * ?"每天中午十二点触发
		"0 15 10 ? * *"每天早上10：15触发
		"0 15 10 * * ?"每天早上10：15触发
		"0 15 10 * * ? *"每天早上10：15触发
		"0 15 10 * * ? 2005" 2005年的每天早上10：15触发
		"0 * 14 * * ?"每天从下午2点开始到2点59分每分钟一次触发
		"0 0/5 14 * * ?"每天从下午2点开始到2：55分结束每5分钟一次触发
		"0 0/5 14,18 * * ?"每天的下午2点至2：55和6点至6点55分两个时间段内每5分钟一次触发
		"0 0-5 14 * * ?"每天14:00至14:05每分钟一次触发
		"0 10,44 14 ? 3 WED"三月的每周三的14：10和14：44触发
		"0 15 10 ? * MON-FRI"每个周一、周二、周三、周四、周五的10：15触发
		"0 15 10 15 * ?"每月15号的10：15触发
		"0 15 10 L * ?"每月的最后一天的10：15触发
		"0 15 10 ? * 6L"每月最后一个周五的10：15
 */
@Component
public class MyQuartz { 
	@Resource(name = "topicServiceImpl")
	private TopicService topicService;	
    
	@Scheduled(cron="0 0 12 * * ?")//每天中午十二点触发
	public void taskCycle(){
		List<Object[]> list=new ArrayList<Object[]>();
		list=topicService.alltopic();
		for (int i = 0; i < list.size(); i++) {
			Object[] obj=list.get(i);
			PgcTopic pt=new PgcTopic();
			pt.setId((Integer)obj[0]);
			pt.setUserId((Integer)obj[1]);
			pt.setTitle((String)obj[2]);
			pt.setImageUrl((String)obj[3]);
			pt.setContent((String)obj[4]);
			NowTimetool nowtime=new NowTimetool();
			String time=nowtime.nowdate();
			long topicount=topicService.topiccount(obj[0], time);
			int count= new Long(topicount).intValue();
			HotTool ht=new HotTool();
			String hot=String.valueOf(ht.test(count));
			pt.setHeat(hot);
			pt.setPv((Integer)obj[6]);
			pt.setCreateTime((Timestamp)obj[7]);
			pt.setIp((String)obj[8]);
			boolean b=topicService.uptopic(pt);
			if(b){
				System.out.println("定时插入成功");
			}else{
				System.out.println("定时插入失败");
			}
		}
	}
}  
